﻿import { defineStore } from "pinia";
import {  ref } from "vue";

const usePsyTableStore = defineStore(
  'psyTable',
  () => {
    /**
     * 测试种类列表
     */
    const tableKindList = ref(['推荐测评', '职业发展', '智力情商', '性格气质'])
    /**
     * 当前所选的测试种类
     */
    const tableKind = ref(tableKindList.value[0] || '推荐测评') 
    /**
     * 当前测试种类的介绍文本
     */
    const tableKindText = ref("心理测评是一种较为先进的测试方法，它是指通过一系列手段，将人的某些心理特征数量化，来衡量个体心理因素水平和个体心理差异的一种科学测量方法")
    /**
     * 当前种类下的测试列表
     */
    const currentTableList = ref([
      {
        name: "抑郁自评",
        nameAbbr: "SDS",
        text: "简单，快速，直接的把握抑郁症状",
        img: "https://psystatic.fenxapp.com/uploads/0/1/240326/7ef2e007a73ec0b5cb72ace79ce975d1.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_84",
        lable: "专业型",
      },
      {
        name: "MBIT人格测试(48题)",
        nameAbbr: "MBIT",
        text: "国际最为流行的人格评估工具之一，解锁最适合你的性格路径，透视内心，规划未来",
        img: "https://psystatic.fenxapp.com/uploads/0/1/240110/7946df0e7e9d148d04f13e0b9edb8e3f.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
        lable: "专业型",
      },
    ])

    /**
     * 改变当前所选的测试种类
     */
    const changeTableKind = (kind) => {
      tableKind.value = kind
    }

    /**
     * 获取当前种类下的介绍文本
     * 暂定方法 - api 接口完善后需替换
     */
    const getTableKindText = () => {
      switch (tableKind.value) {
        case '推荐测评':
          tableKindText.value = "心理测评是一种较为先进的测试方法，它是指通过一系列手段，将人的某些心理特征数量化，来衡量个体心理因素水平和个体心理差异的一种科学测量方法。"
          break

        case '职业发展':
          tableKindText.value = "职业测评旨在揭示你的性格、能力、兴趣和价值观，助你明确职业规划。通过深入了解自我，你可识别合适的工作及发展路径，高效推进职业成功。这样，不仅能增强你市场竞争力，还能加速实现职业愿景。"
          break

        case '智力情商':
          tableKindText.value = "智力测试就是对智力的科学测试，智力的高低直接影响到一个人在社会上是否成功，该分类涉及到主流智力测评。"
          break

        case '性格气质':
          tableKindText.value = "性格气质指的是个体行为风格和情绪反应的稳定倾向。它是由遗传和环境共同作用的结果，影响人的适应方式和心理健康。心理测评通过各种工具评估这一特征，以助于个人成长和发展。"
          break
      }
      console.log('当前方法已经调用');
    }
    /**
     * 获取当前种类下的测试列表
     * 暂定方法 - api 接口完善后需替换
     */
    const getCurrentTableList = () => {
      switch (tableKind.value) {
        case '推荐测评':
          currentTableList.value = [
            {
              name: "抑郁自评",
              nameAbbr: "SDS",
              text: "简单，快速，直接的把握抑郁症状",
              img: "https://psystatic.fenxapp.com/uploads/0/1/240326/7ef2e007a73ec0b5cb72ace79ce975d1.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_84",
              lable: "专业型",
            },
            {
              name: "MBIT人格测试(48题)",
              nameAbbr: "MBIT",
              text: "国际最为流行的人格评估工具之一，解锁最适合你的性格路径，透视内心，规划未来",
              img: "https://psystatic.fenxapp.com/uploads/0/1/240110/7946df0e7e9d148d04f13e0b9edb8e3f.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
          ]
          break

        case '职业发展':
          currentTableList.value = [
            {
              name: "一般能力倾向测试（国际标准版）",
              nameAbbr: "GATB",
              text: "揭示你的心理和生理倾向，预测并引导你的学业和职业发展，解锁内在潜力",
              img: "http://psystatic.fenxapp.com/uploads/0/1/221123/9c6bda66160dbf49b56a6094cb0f9aba.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
            {
              name: "霍兰德职业兴趣测试（144题）",
              nameAbbr: "SDS",
              text: "揭示你的职业兴趣类型，提供个性化的职业建议，帮助你做出更明智的职业选择与规划",
              img: "https://psystatic.fenxapp.com/uploads/0/1/221030/fd0f1c6fb7d9798835ad975a85b69611.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
          ]
          break

        case '智力情商':
          currentTableList.value = [
            {
              name: "瑞文高级推理实验",
              nameAbbr: "RWGJ",
              text: "瑞文标准版的升级版",
              img: "https://psystatic.fenxapp.com/images/table/1fxy.jpg?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
            {
              name: "瑞文标准推理实验",
              nameAbbr: "RW",
              text: "国际最为流行的人格评估工具之一，解锁最适合你的性格路径，透视内心，规划未来",
              img: "https://psystatic.fenxapp.com/images/table/1fxy.jpg?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
          ]
          break

        case '性格气质':
          currentTableList.value = [
            {
              name: "人格障碍诊断问卷（修订版）",
              nameAbbr: "PDQ+4",
              text: "评估人格障碍，涵盖12领域，广泛应用于精神疾病和健康人群",
              img: "https://psystatic.fenxapp.com/uploads/0/1/240607/edb6eba1ce1f61db6c11908057e54c2e.png?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
            {
              name: "自恋型人格量表",
              nameAbbr: "NPI-56   ",
              text: "评估个人自恋型倾向，帮助理解行为模式和情感倾向，促进职业发展和人际关系改善",
              img: "https://psystatic.fenxapp.com/uploads/0/1/240624/4b8df10c1ef590932e7a95851fbd39c9.jpg?x-oss-process=image/auto-orient,1/interlace,1/resize,m_lfit,w_186,1/format,webp",
              lable: "专业型",
            },
          ]
          break
      }
      console.log('当前方法已经调用');
    }

    /**
     * 当前种类改变时，获取当前种类下的测试列表
     */
    watch(
      () => tableKind.value,
      (newValue) => {
        console.log('菜单项改变为:', newValue);
        getTableKindText()
        getCurrentTableList()
      }
    )

    return {
      tableKindList,
      tableKind,
      tableKindText,
      currentTableList,
      changeTableKind,
    }
  }
)

export default usePsyTableStore

